package com.xhsj.user.lsm.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.google.common.collect.Lists;
import com.xhsj.user.sms.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * <p>
 * 证章使用申请
 * </p>
 *
 * @author suxiaolin
 * @since 2020-03-16
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tb_badges_use_apply")
public class TbBadgesUseApply extends BaseEntity<TbBadgesUseApply> {

    private static final long serialVersionUID = 1L;

    /**
     * 类别 0 证照 1 章
     */
    @TableField("type")
    private String type;

    @TableField(exist = false)
    private List<String> types = Lists.newArrayList();

    /**
     * 使用方式 0 公司内 1 外借
     */
    @TableField("use_way")
    private Integer useWay;

    /**
     * 根据type带出证章名称
     */
    @TableField("name")
    private String name;

    @TableField("badges_manager_id")
    private String badgesManagerId;

    @TableField(exist = false)
    private List<String> badgesManagerIds = Lists.newArrayList();


    @TableField(exist = false)
    private List<TbBadgesUseApplyFile> useApplyFileLists = Lists.newArrayList();

    /**
     * 使用时长 外借时候显示
     */
    @TableField("use_length")
    private String useLength;

    /**
     * 申请事由
     */
    @TableField("apply_reason")
    private String applyReason;

    /**
     * 节点名称
     * @author 苏小林
     * @date 2020/3/19 13:33
     */
    @TableField("node_name")
    private String nodeName;

    /**
     * 处理状态【0未处理 | 1 已处理】
     * @author 苏小林
     * @date 2020/3/19 13:33
     */
    @TableField("ac_type")
    private Integer acType;

    /**
     * 是否重要 1.普通,2.重要
     * @author 苏小林
     * @date 2020/3/19 13:33
     */
    @TableField("significance_identify")
    private Integer significanceIdentify;

    @TableField("use_source")
    private Integer useSource;  //用途来源

    /*以下字段用于查询任务转出使用*/

    @TableField(exist = false)
    private List<Object> userList = Lists.newArrayList();

    @TableField(exist = false)
    private String transferId;

}
